🧠 Sistema de Reconocimiento Facial para el Control de Asistencia
🎯 Objetivo General
Desarrollar un sistema de reconocimiento facial automatizado para el control de asistencia de estudiantes, mejorando la precisión y eficiencia en entornos educativos.
🎯 Objetivos Específicos
- 🧬 Implementar un algoritmo de reconocimiento facial capaz de identificar a los estudiantes a partir de sus imágenes.
- 🗂️ Integrar el sistema con una base de datos para almacenar y consultar los registros de asistencia.
- 🖥️ Diseñar una interfaz de usuario amigable para facilitar el acceso de estudiantes al sistema.
- 🌐 Validar el rendimiento del sistema en diferentes condiciones (iluminación, ángulos, variedad de rostros).
- ⚡ Optimizar el tiempo de procesamiento para asegurar eficiencia en entornos con grandes volúmenes de estudiantes.
📌 Alcance
👥 Usuario objetivo
El sistema está diseñado para instituciones educativas, como escuelas y universidades.
📌 Funcionalidades principales
-
🧑💻 Registro y reconocimiento facial
Los estudiantes se registran mediante una imagen facial que será usada para su identificación automática. -
📅 Control de asistencia automatizado
El sistema marca asistencia automáticamente al reconocer el rostro del estudiante al ingresar. -
🛠️ Interfaz de gestión
Profesores y administradores pueden consultar y gestionar los registros mediante una interfaz web. -
🗃️ Base de datos de asistencia
Cada asistencia es almacenada y consultable por nombre, fecha y otros filtros.
⚙️ Tecnologías
| Categoría | Herramientas/Lenguajes | Descripción |
|---|---|---|
| 💻 Lenguaje | Python | Desarrollo principal del sistema, alta compatibilidad con visión por computadora. |
| 📚 Librerías | OpenCV, NumPy, Pillow, Pandas, PyMySQL | Manejo de imágenes, datos y conexión con bases de datos. |
| 🌐 Framework Web | Streamlit | Interfaz simple e interactiva para visualizar y gestionar el sistema. |
| 🛢️ Base de Datos | MySQL / SQLite | Almacena la información facial y los registros de asistencia. |
| 📷 Hardware Requerido | Cámara Web, PC con recursos adecuados | Captura de imágenes y procesamiento en tiempo real. |
🧰 Librerías y Funciones
🔍 Visión por computadora
-
OpenCV (
opencv-python)
Captura, detección y procesamiento de imágenes en tiempo real. -
Pillow
Manipulación de imágenes (recorte, conversión, mejoramiento de calidad). -
NumPy
Procesamiento eficiente de datos y matrices.
💾 Manejo de Datos
-
Pandas
Análisis y visualización de los datos de asistencia. -
PyMySQL
Comunicación entre Python y la base de datos MySQL.
🖥️ Interfaz de Usuario
- Basada en Streamlit.
- Intuitiva y fácil de usar.
- Permite registro, visualización de datos y gestión de asistencia.
🧪 Requisitos de Hardware
| Componente | Descripción |
|---|---|
| 📷 Cámara Web | Captura de imágenes faciales de los estudiantes. |
| 🖥️ Computadora | Procesamiento de imágenes y almacenamiento de datos. |
💡 Este sistema se encuentra en desarrollo y está pensado como un apoyo tecnológico a las prácticas educativas modernas, alineado con el uso de inteligencia artificial en instituciones académicas.